package com.jinzhi.jzweb.domain;

import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.jinzhi.jzweb.domain.vo.userAunt.UserVO;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;


/**
 * 
 * <pre>
 * 后台需求和面试邀约中间表
 * </pre>
 * <small> 2024-08-01 15:19:16 | Long</small>
 */
@Data
@SuppressWarnings("serial")
@TableName("jaz_order_taking")
//这是的这里继承的基础服务类，有几个基本字段
public class JazOrderTakingDO implements Serializable {
	@TableId
	private Long id;

    /** demand表id */
    @TableField("demand_id")
    private Long demandId;

    /** interview表id */
    @TableField("interview_id")
    private Long interviewId;

    /** 邀约人id */
    @TableField("inviter_id")
    private Long inviterId;

    /** 被邀约人id */
    @TableField("invitee_id")
    private Long inviteeId;


    /** 月嫂id */
    @TableField(exist = false)
    private Long auntUserId;


    /** 订单编号 */
    @TableField("order_number")
    private Long orderNumber;


    /** 创建时间 */
    @TableField("create_time")
    private Date createTime;

    /** 更新时间 */
    @TableField("update_time")
    private Date updateTime;

    /** 发起面试邀约状态（0，未发起，1，已发起）默认未发起 */
    @TableField("interview_status")
    private Integer interviewStatus;

    /** 被邀约人id */
    @TableField(exist = false)
    private String projectId;

    /** 邀约人名称 */
    @ApiModelProperty(value = "邀约人名称")
    @TableField(exist = false)
    private String inviterName;

    /** 邀约人-联系方式*/
    @ApiModelProperty(value = "邀约人-联系方式")
    @TableField(exist = false)
    private String inviterPhone;

    /** 被邀约人名称 */
    @ApiModelProperty(value = "被邀约人名称")
    @TableField(exist = false)
    private String inviteeName;

    /** 被邀约人名称 */
    @ApiModelProperty(value = "被邀约人名称")
    @TableField(exist = false)
    private String inviteePhone;

    /** 订单来源 */
    @TableField(exist = false)
    private Integer demandSource;

    /** 职业名称（jaz_sys_projec表的name） */
    @ApiModelProperty(value = "职业名称")
    @TableField(exist = false)
    private String projectName;

    @ApiModelProperty(value = "工作开始日期")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    @TableField(exist = false)
    private Date workTime;

    @ApiModelProperty(value = "工作结束日期")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    @TableField(exist = false)
    private Date endTime;

    /** 面试结果（0.待定/1.面试通过/2.面试拒绝） */
    @TableField(exist = false)
    @ApiModelProperty(value = "面试结果（0.待定/1.面试通过/2.面试拒绝）")
    private Integer result;


    /** 订单状态（0.待开始 / 1.进行中 / 2.已完成 3.已取消 4.已转让） */
    @TableField(exist = false)
    @ApiModelProperty(value = "订单状态（0.待开始 / 1.进行中 / 2.已完成 3.已取消 4.已转让）")
    private Integer status;

    @ApiModelProperty(value = "月嫂详情")
    @TableField(exist = false)
    private List<UserVO> userList;

    @ApiModelProperty(value = "需求信息")
    @TableField(exist = false)
    private JazUserDemandDO jazUserDemandDO;


    /** 寸照（一张） */
    @ApiModelProperty(value = "寸照（一张）")
    @TableField(exist = false)
    private String inchPhoto;

    /**
     * 姓名
     */
    @ApiModelProperty(value = "姓名")
    @TableField(exist = false)
    private String name;


    /**
     * 邀约状态 = 0未邀约，1已邀约
     */
    @ApiModelProperty(value = "邀约状态")
    @TableField(exist = false)
    private int inviteStatus;
}
